package org.NooLab.itexx.storage.docsom.iciql;

import com.iciql.Iciql.IQColumn;
import com.iciql.Iciql.IQIndex;
import com.iciql.Iciql.IQIndexes;
import com.iciql.Iciql.IQTable;


@IQTable

 
public class Randomdocuments {

	@IQColumn(primaryKey = true)
	public Long id;

	@IQColumn
	public Long somid;      // the source L(n-1) - SOM, we may harvest contexts not only from documents, 
	                        // but also from the basic Astor L1 SOM ... for creating an adaptive corpus adhoc
	@IQColumn
	public Long docid;      // the document for which we created the histogram   

	@IQColumn
	public Long markovid;   // not yet used, will link a markov description to the histogram description;
    						// the final SOM data table will be created on the fly   

	@IQColumn
	public Integer nodesizetotal;  // the size of node where the doc has been found 
 
	@IQColumn
	public Double  docnvariety;     // variety of docs found in the node, as ratio

	@IQColumn
	public Double  docnvarivar;
	
	@IQColumn
	public Double  docpvariety;
	
	@IQColumn
	public Double  docpvarivar;
	
	@IQColumn
	public Double  docabundance;
	
	@IQColumn
	public Integer histogramsize;  // original length of the histogram = size of the source som  


	@IQColumn
	public Long createtime;        // timestamp, useful for forgetting procedures
	
	@IQColumn
	public Integer status;         // indicates whether the referenced doc exists = is available

	@IQColumn
	public Long vanishtime;        // time where the referenced document disappeared, useful for forgetting procedures

	                               // the histogram as a [;] list, will be translated online into a table
	@IQColumn (length = 2000,trim = true)  // 8 digits total+ 1 sep ~10 *150 1500
	public String randomdoc ;

	
	// ----------------------------------------------------
	public Randomdocuments(){
		
	}
	// ----------------------------------------------------
	public void clear() {
		 
		somid = -1L;  
		docid = -1L;   
		createtime = -1L;
		vanishtime = -1L;
		status=-1;
		 
		nodesizetotal = 0; 
		docnvariety = 0.0;
		docnvarivar = 0.0 ;
		docpvariety = 0.0 ;
		docpvarivar = 0.0 ;
		docabundance = 0.0 ;
		histogramsize = 0 ;
		
		randomdoc="" ; // a list of doubles [;..;..[]]
	}

	public Long getId() {
		return id;
	}
	public void setId(Long id) {
		this.id = id;
	}
	public Long getSomid() {
		return somid;
	}
	public void setSomid(Long somid) {
		this.somid = somid;
	}
	public Long getDocid() {
		return docid;
	}
	public void setDocid(Long docid) {
		this.docid = docid;
	}
	public Long getMarkovid() {
		return markovid;
	}
	public void setMarkovid(Long markovid) {
		this.markovid = markovid;
	}
	public Integer getNodesizetotal() {
		return nodesizetotal;
	}
	public void setNodesizetotal(Integer nodesizetotal) {
		this.nodesizetotal = nodesizetotal;
	}
	public Double getDocnvariety() {
		return docnvariety;
	}
	public void setDocnvariety(Double docnvariety) {
		this.docnvariety = docnvariety;
	}
	public Double getDocnvarivar() {
		return docnvarivar;
	}
	public void setDocnvarivar(Double docnvarivar) {
		this.docnvarivar = docnvarivar;
	}
	public Double getDocpvariety() {
		return docpvariety;
	}
	public void setDocpvariety(Double docpvariety) {
		this.docpvariety = docpvariety;
	}
	public Double getDocpvarivar() {
		return docpvarivar;
	}
	public void setDocpvarivar(Double docpvarivar) {
		this.docpvarivar = docpvarivar;
	}
	public Double getDocabundance() {
		return docabundance;
	}
	public void setDocabundance(Double docabundance) {
		this.docabundance = docabundance;
	}
	public Integer getHistogramsize() {
		return histogramsize;
	}
	public void setHistogramsize(Integer histogramsize) {
		this.histogramsize = histogramsize;
	}
	public Long getCreatetime() {
		return createtime;
	}
	public void setCreatetime(Long createtime) {
		this.createtime = createtime;
	}
	public Integer getStatus() {
		return status;
	}
	public void setStatus(Integer status) {
		this.status = status;
	}
	public Long getVanishtime() {
		return vanishtime;
	}
	public void setVanishtime(Long vanishtime) {
		this.vanishtime = vanishtime;
	}
	public String getRandomdoc() {
		return randomdoc;
	}
	public void setRandomdoc(String randomdoc) {
		this.randomdoc = randomdoc;
	}

	
		
}
	
